{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 74,
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "from scipy.stats import chi2_contingency\n",
    "from matplotlib import pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 75,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>log_date</th>\n",
       "      <th>app_name</th>\n",
       "      <th>test_name</th>\n",
       "      <th>test_case</th>\n",
       "      <th>user_id</th>\n",
       "      <th>transaction_id</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>36703</td>\n",
       "      <td>25622</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>A</td>\n",
       "      <td>44339</td>\n",
       "      <td>25623</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>32087</td>\n",
       "      <td>25624</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>10160</td>\n",
       "      <td>25625</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>46113</td>\n",
       "      <td>25626</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     log_date app_name   test_name test_case  user_id  transaction_id\n",
       "0  2013-10-01  game-01  sales_test         B    36703           25622\n",
       "1  2013-10-01  game-01  sales_test         A    44339           25623\n",
       "2  2013-10-01  game-01  sales_test         B    32087           25624\n",
       "3  2013-10-01  game-01  sales_test         B    10160           25625\n",
       "4  2013-10-01  game-01  sales_test         B    46113           25626"
      ]
     },
     "execution_count": 75,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 读入 ab_test_imp（关于广告曝光次数的信息）数据\n",
    "ab_test_imp_table = pd.read_csv('./data/section5-ab_test_imp.csv')\n",
    "ab_test_imp_table.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 76,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>log_date</th>\n",
       "      <th>app_name</th>\n",
       "      <th>test_name</th>\n",
       "      <th>test_case</th>\n",
       "      <th>user_id</th>\n",
       "      <th>transaction_id</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>15021</td>\n",
       "      <td>25638</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>351</td>\n",
       "      <td>25704</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>8276</td>\n",
       "      <td>25739</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>1230</td>\n",
       "      <td>25742</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>2013-10-01</td>\n",
       "      <td>game-01</td>\n",
       "      <td>sales_test</td>\n",
       "      <td>B</td>\n",
       "      <td>17471</td>\n",
       "      <td>25743</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "     log_date app_name   test_name test_case  user_id  transaction_id\n",
       "0  2013-10-01  game-01  sales_test         B    15021           25638\n",
       "1  2013-10-01  game-01  sales_test         B      351           25704\n",
       "2  2013-10-01  game-01  sales_test         B     8276           25739\n",
       "3  2013-10-01  game-01  sales_test         B     1230           25742\n",
       "4  2013-10-01  game-01  sales_test         B    17471           25743"
      ]
     },
     "execution_count": 76,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 读入 ab_test_goal（关于广告点击次数的信息）数据\n",
    "ab_test_goal_table = pd.read_csv('./data/section5-ab_test_goal.csv')\n",
    "ab_test_goal_table.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 77,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>transaction_id</th>\n",
       "      <th>log_date</th>\n",
       "      <th>click_date</th>\n",
       "      <th>test_case</th>\n",
       "      <th>user_id</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>NaN</td>\n",
       "      <td>A</td>\n",
       "      <td>49017</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>NaN</td>\n",
       "      <td>B</td>\n",
       "      <td>49018</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>NaN</td>\n",
       "      <td>A</td>\n",
       "      <td>44338</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>NaN</td>\n",
       "      <td>A</td>\n",
       "      <td>44339</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>NaN</td>\n",
       "      <td>A</td>\n",
       "      <td>28598</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   transaction_id    log_date click_date test_case  user_id\n",
       "0               1  2013-10-02        NaN         A    49017\n",
       "1               2  2013-10-02        NaN         B    49018\n",
       "2               3  2013-10-02        NaN         A    44338\n",
       "3               4  2013-10-02        NaN         A    44339\n",
       "4               5  2013-10-02        NaN         A    28598"
      ]
     },
     "execution_count": 77,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 合并 ab_test_imp 和 ab_test_goal\n",
    "merge_table = pd.merge(ab_test_imp_table,ab_test_goal_table,how='left',left_on='transaction_id',right_on='transaction_id',sort=True)\n",
    "merge_table = merge_table.rename(columns = {'app_name_x': 'app_name','log_date_x':'log_date','test_name_x':'test_name','test_case_x':'test_case','user_id_x':'user_id','log_date_y':'click_date'})\n",
    "merge_table = merge_table[['transaction_id','log_date','click_date','test_case','user_id']]\n",
    "merge_table.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 78,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>transaction_id</th>\n",
       "      <th>log_date</th>\n",
       "      <th>test_case</th>\n",
       "      <th>user_id</th>\n",
       "      <th>是否被点击</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>1</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>A</td>\n",
       "      <td>49017</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>B</td>\n",
       "      <td>49018</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>A</td>\n",
       "      <td>44338</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>4</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>A</td>\n",
       "      <td>44339</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>2013-10-02</td>\n",
       "      <td>A</td>\n",
       "      <td>28598</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   transaction_id    log_date test_case  user_id  是否被点击\n",
       "0               1  2013-10-02         A    49017      0\n",
       "1               2  2013-10-02         B    49018      0\n",
       "2               3  2013-10-02         A    44338      0\n",
       "3               4  2013-10-02         A    44339      0\n",
       "4               5  2013-10-02         A    28598      0"
      ]
     },
     "execution_count": 78,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 生成新列，记录是否被点击\n",
    "merge_table['是否被点击'] = merge_table['click_date'].apply(lambda x: 1 if str(x) != 'nan' else 0)\n",
    "merge_table = merge_table[['transaction_id','log_date','test_case','user_id','是否被点击']]\n",
    "merge_table.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 100,
   "metadata": {
    "scrolled": true
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead tr th {\n",
       "        text-align: left;\n",
       "    }\n",
       "\n",
       "    .dataframe thead tr:last-of-type th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr>\n",
       "      <th></th>\n",
       "      <th>点击率</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>是否被点击</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>test_case</th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>A</td>\n",
       "      <td>8.03%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>B</td>\n",
       "      <td>11.55%</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>All</td>\n",
       "      <td>9.78%</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "              点击率\n",
       "是否被点击            \n",
       "test_case        \n",
       "A           8.03%\n",
       "B          11.55%\n",
       "All         9.78%"
      ]
     },
     "execution_count": 100,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 统计点击率\n",
    "pivot_click_rate = pd.pivot_table(merge_table,index=['test_case'],values=['user_id'],columns=['是否被点击'],aggfunc='count',margins=True)\n",
    "pivot_click_rate['点击率'] = pivot_click_rate['user_id',1] / pivot_click_rate['user_id','All']\n",
    "pivot_click_rate['点击率'] = pivot_click_rate['点击率'].apply(lambda x: format(x, '.2%'))\n",
    "pivot_click_rate = pivot_click_rate[['点击率']]\n",
    "pivot_click_rate"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 101,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "chisq-statistic=308.3751, p-value=0.0000, df=1 expected_frep=[[39818.18029207  4315.81970793]\n",
      " [39507.81970793  4282.18029207]]\n"
     ]
    }
   ],
   "source": [
    "# 进行卡方检验(双变量差异性因素的显著性检验)\n",
    "kf_data = pd.crosstab(merge_table['test_case'],merge_table['是否被点击'],margins=False)\n",
    "kf = chi2_contingency(kf_data)\n",
    "print('chisq-statistic=%.4f, p-value=%.4f, df=%i expected_frep=%s'%kf)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 162,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>test_case</th>\n",
       "      <th>日期</th>\n",
       "      <th>点击率</th>\n",
       "      <th>点击率均值</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <td>0</td>\n",
       "      <td>A</td>\n",
       "      <td>10-01</td>\n",
       "      <td>0.072165</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>1</td>\n",
       "      <td>B</td>\n",
       "      <td>10-01</td>\n",
       "      <td>0.126528</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>2</td>\n",
       "      <td>A</td>\n",
       "      <td>10-02</td>\n",
       "      <td>0.064234</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>3</td>\n",
       "      <td>B</td>\n",
       "      <td>10-02</td>\n",
       "      <td>0.159040</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>4</td>\n",
       "      <td>A</td>\n",
       "      <td>10-03</td>\n",
       "      <td>0.140148</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "      <td>...</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>57</td>\n",
       "      <td>B</td>\n",
       "      <td>10-29</td>\n",
       "      <td>0.106383</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>58</td>\n",
       "      <td>A</td>\n",
       "      <td>10-30</td>\n",
       "      <td>0.077181</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>59</td>\n",
       "      <td>B</td>\n",
       "      <td>10-30</td>\n",
       "      <td>0.163851</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>60</td>\n",
       "      <td>A</td>\n",
       "      <td>10-31</td>\n",
       "      <td>0.047970</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <td>61</td>\n",
       "      <td>B</td>\n",
       "      <td>10-31</td>\n",
       "      <td>0.162037</td>\n",
       "      <td>0.098351</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "<p>62 rows × 4 columns</p>\n",
       "</div>"
      ],
      "text/plain": [
       "   test_case     日期       点击率     点击率均值\n",
       "0          A  10-01  0.072165  0.098351\n",
       "1          B  10-01  0.126528  0.098351\n",
       "2          A  10-02  0.064234  0.098351\n",
       "3          B  10-02  0.159040  0.098351\n",
       "4          A  10-03  0.140148  0.098351\n",
       "..       ...    ...       ...       ...\n",
       "57         B  10-29  0.106383  0.098351\n",
       "58         A  10-30  0.077181  0.098351\n",
       "59         B  10-30  0.163851  0.098351\n",
       "60         A  10-31  0.047970  0.098351\n",
       "61         B  10-31  0.162037  0.098351\n",
       "\n",
       "[62 rows x 4 columns]"
      ]
     },
     "execution_count": 162,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "# 计算每天的点击率\n",
    "pivot_click_rate_per_day = pd.pivot_table(merge_table,index=['log_date','test_case'],values=['user_id'],columns=['是否被点击'],aggfunc='count',margins=True)\n",
    "pivot_click_rate_per_day['点击率'] = pivot_click_rate_per_day['user_id',1] / pivot_click_rate_per_day['user_id','All']\n",
    "pivot_click_rate_per_day = pivot_click_rate_per_day['点击率']\n",
    "pivot_click_rate_per_day = pivot_click_rate_per_day.reset_index()\n",
    "pivot_click_rate_per_day['日期'] = pivot_click_rate_per_day['log_date'].map(lambda x: x.replace('2013-',''))\n",
    "pivot_click_rate_per_day = pivot_click_rate_per_day[['test_case','日期','点击率']]\n",
    "pivot_click_rate_per_day = pivot_click_rate_per_day[pivot_click_rate_per_day['日期'] != 'All']\n",
    "pivot_click_rate_per_day['点击率均值'] = pivot_click_rate_per_day['点击率'].mean()\n",
    "# pivot_click_rate_per_day['点击率'] = pivot_click_rate_per_day['点击率'].apply(lambda x: format(x, '.2%'))\n",
    "# pivot_click_rate_per_day['点击率均值'] = pivot_click_rate_per_day['点击率均值'].apply(lambda x: format(x, '.2%'))\n",
    "pivot_click_rate_per_day"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 166,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<matplotlib.axes._subplots.AxesSubplot at 0x83b1a2d488>"
      ]
     },
     "execution_count": 166,
     "metadata": {},
     "output_type": "execute_result"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 结果可视化\n",
    "plt.rcParams['font.sans-serif']=['SimHei']\n",
    "plt.rcParams['axes.unicode_minus']=False\n",
    "\n",
    "df =  pd.pivot_table(pivot_click_rate_per_day,index=['日期'],values=['点击率','点击率均值'],columns=['test_case'],aggfunc='sum')\n",
    "df.plot(kind='line')"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "hide_input": false,
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.4"
  },
  "nbTranslate": {
   "displayLangs": [
    "*"
   ],
   "hotkey": "alt-t",
   "langInMainMenu": true,
   "sourceLang": "en",
   "targetLang": "fr",
   "useGoogleTranslate": true
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  },
  "varInspector": {
   "cols": {
    "lenName": 16,
    "lenType": 16,
    "lenVar": 40
   },
   "kernels_config": {
    "python": {
     "delete_cmd_postfix": "",
     "delete_cmd_prefix": "del ",
     "library": "var_list.py",
     "varRefreshCmd": "print(var_dic_list())"
    },
    "r": {
     "delete_cmd_postfix": ") ",
     "delete_cmd_prefix": "rm(",
     "library": "var_list.r",
     "varRefreshCmd": "cat(var_dic_list()) "
    }
   },
   "types_to_exclude": [
    "module",
    "function",
    "builtin_function_or_method",
    "instance",
    "_Feature"
   ],
   "window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
